package com.oros.db.pojo;
import java.util.ArrayList;
import java.util.List;

import com.oros.db.AEFilter;
import com.oros.db.AERawItem;
import com.oros.db.AESort;
import com.oros.db.AETransactionData;
import com.oros.db.AEVaadTable;

public abstract class PojoVaadTable extends AEVaadTable {

	private static final long serialVersionUID = 1L;
    public PojoVaadTable()
    {
    	
    }
    
	@Override
	public void FinalTransactionCommit(AETransactionData arg0) throws Exception {
	}

	@Override
	public void FinalTransactionRollback(AETransactionData arg0)
			throws Exception {
	}
	@Override
	public List<Object> SelectRowsGeneral(String arg0, String arg1, int arg2,
			int arg3, ArrayList<AEFilter> arg4, ArrayList<AESort> arg5) throws Exception {
		return SelectRows(arg0,arg1,arg2,arg3,arg4,arg5);
	}
	@Override
	public void allocateNewId(AERawItem arg0, String arg1) throws Exception {
	}
	@Override
	public boolean vdIsTimeStampSupported() {
		return true;
	}
	@Override
	public boolean isNewItemHasDummyId() {
		return true;
	}
	@Override
	public boolean isCommitNeededRefresh() {
		return true;
	}
        public void DeleteRowById(String tblname,String tblname_base,long keyId,AETransactionData transdata,boolean finalCommit) throws Exception
        {
        	throw new Exception("DeleteRowById must be overriden in PojoVaadTable");
        }
     
        public long vdGetPrimaryId(Object entity)
        {
        	return 0;
        }
        @Override
        public void vDeleteRowById(String tblname,String tblname_base,long keyId,AETransactionData transdata,boolean finalCommit,String primaryKey) throws Exception
        {
            DeleteRowById(tblname,tblname_base,keyId,transdata,finalCommit);
        }
        @Override 
        public long vvdGetPrimaryId(Object entity,String idColumnName,int idColumnNr)
        {
            return vdGetPrimaryId(entity);
        }
        @Override
    	public boolean isBaseTableSeparationSupported()
    	{
    		return false;
    	}  
    	@Override 
    	public boolean isAEFilterAndSorterSupported()
    	{
    		return false;
    	}

        
}
